package com.hps.shiro.service;

import com.hps.shiro.model.User;

/**
 * @author heps
 * @since 2020/6/8 11:22
 */
public interface AuthorizeService {

  /** 根据客户端id 查询客户端是否存在 */
  boolean checkClientId(String clientId);
  /** 添加 auth code */
  void addAuthCode(String authCode, User user);
  /** 检查客户端安全Key是否正确 */
  boolean checkClientSecret(String clientSecret);
  /** 检查authCode是否可用 */
  boolean checkAuthCode(String authCode);
  /** 根据 authCode 获取用户 */
  User getUsernameByAuthCode(String authCode);
  /** 添加accessToken */
  void addAccessToken(String accessToken, User user);
  /** access token 过期时间 */
  long getExpireIn(String accessToken);
  /** 检查 accessToken 是否可用 */
  boolean checkAccessToken(String accessToken);
  /** 根据 accessToken 获取用户名 */
  User getUserByAccessToken(String accessToken);
}
